The present invention relates generally to the field of modems, and, more particularly, to modem diagnostics.
The demand for remote access to information sources and data retrieval, as evidenced by the success of services such as the World Wide Web, is a driving force for high-speed network access technologies. Today""s telephone network offers standard voice services over a 4 kHz bandwidth. Traditional analog modem standards generally assume that both ends of a modem communication session have an analog connection to the public switched telephone network (PSTN). Because data signals are typically converted from digital to analog when transmitted towards the PSTN and then from analog to digital when received from the PSTN, data rates may be limited to 33.6 kbps as defined in the V.34 transmission recommendation developed by the International Telecommunications Union (ITU).
The need for an analog modem can be eliminated, however, by using the basic rate interface (BRI) of the Integrated Services Digital Network (ISDN). A BRI offers end-to-end digital connectivity at an aggregate data rate of 160 kbps, which is comprised of two 64 kbps B channels, a 16 kbps D channel, and a separate maintenance channel. The ISDN offers suitable data rates for Internet access, telecommuting, remote education services, and some forms of video conferencing. ISDN deployment, however, has been very slow due to the substantial investment required of network providers for new equipment. Because the ISDN is not very pervasive in the PSTN, the network providers have typically tarriffed ISDN services at relatively high rates, which may be ultimately passed on to the ISDN subscribers. In addition to the high service costs, subscribers must generally purchase or lease network termination equipment to access the ISDN.
While most subscribers do not enjoy end-to-end digital connectivity through the PSTN, the PSTN is nevertheless mostly digital. Typically, the only analog portion of the PSTN is the phone line or local loop that connects a subscriber or client modem (e.g., an individual subscriber in a home, office, or hotel) to the telephone company""s central office (CO). In recent years, local telephone companies have been replacing portions of their original analog networks with digital switching equipment. Nevertheless, the connection between the home and the CO has been the slowest to change to digital as discussed in the foregoing with respect to ISDN BRI service. A recent data transmission recommendation issued by the ITU, known as V.90, takes advantage of the digital conversions that have been made in the PSTN. By viewing the PSTN as a digital network, V.90 technology is able to accelerate data downstream from the Internet or other information source to a subscriber""s computer at data rates of up to 56 kbps, even when the subscriber is connected to the PSTN via an analog local loop.
To understand how the V.90 recommendation achieves this higher data rate, it may be helpful to briefly review the operation of V.34 analog modems. V.34 modems are optimized for the situation where both ends of a communication session are connected to the PSTN by analog lines. Even though most of the PSTN is digital, V.34 modems treat the network as if it were entirely analog. Moreover, the V.34 recommendation assumes that both ends of the communication session suffer impairment due to quantization noise introduced by analog-to-digital converters. That is, the analog signals transmitted from the V.34 modems are sampled at 8000 times per second by a codec upon reaching the PSTN with each sample being represented or quantized by an eight-bit pulse code modulation (PCM) codeword. The codec uses 256, non-uniformly spaced, PCM quantization levels defined according to either the xcexc-law or A-law companding standard.
Because the analog waveforms are continuous and the binary PCM codewords are discrete, the digits that are sent across the PSTN can only approximate the original analog waveform. The difference between the original analog waveform and the reconstructed quantized waveform is called quantization noise, which limits the modem data rate.
While quantization noise may limit a V.34 communication session to 33.6 kbps, it nevertheless affects only analog-to-digital conversions. The V.90 standard relies on the lack of analog-to-digital conversions outside of the conversion made at the subscriber""s modem to enable transmission at 56 kbps.
The general environment for which the V.90 standard was developed is depicted in FIG. 1. An Internet Service Provider (ISP) 22 is connected to a subscriber""s computer 24 via a V.90 digital server modem 26, through the PSTN 28 via digital trunks (e.g., T1, E1, or ISDN Primary Rate Interface (PRI) connections), through a central office switch 32, and finally through an analog loop to the client""s modem 34. The central office switch 32 is drawn outside of the PSTN 28 to better illustrate the connection of the subscriber""s computer 24 and modem 34 into the PSTN 28. It should be understood that the central office 32 is, in fact, a part of the PSTN 28. The operation of a communication session between the subscriber 24 and an ISP 22 is best described with reference to the more detailed block diagram of FIG. 2.
Transmission from the server modem 26 to the client modem 34 will be described first. The information to be transmitted is first encoded using only the 256 PCM codewords used by the digital switching and transmission equipment in the PSTN 28. The PCM codewords are modulated using a technique known as pulse amplitude modulation (PAM) in which discrete analog voltage levels are used to represent each of the 256 PCM codewords. These PAM signals are transmitted towards the PSTN by the PAM transmitter 36 where they are received by a network codec. No information is lost in converting the PAM signals back to PCM because the codec is designed to interpret the various voltage levels as corresponding to particular PCM codewords without sampling the PAM signals. The PCM data is then transmitted through the PSTN 28 until reaching the central office 32 to which the client modem 34 is connected. Before transmitting the PCM data to the client modem 34, the data is converted from its current form as either xcexc-law or A-law companded PCM codewords to PAM voltages by the codec expander (digital-to-analog (D/A) converter) 38. These PAM voltages are processed by a central office hybrid 42 where the unidirectional signal received from the codec expander 38 is transmitted towards the client modem 34 as part of a bidirectional signal. A second hybrid 44 at the subscriber""s analog telephone connection converts the bidirectional signal back into a pair of unidirectional signals. Finally, the analog signal from the hybrid 44 is converted into digital PAM samples by an analog-to-digital (A/D) converter 46, which are received and decoded by the PAM receiver 48. Note that for transmission to succeed effectively at 56 kbps, there must be only a single digital-to-analog conversion and subsequent analog-to-digital conversion between the server modem 26 and the client modem 34. Recall that analog-to-digital conversions in the PSTN 28 can introduce quantization noise, which may limit the data rate as discussed hereinbefore. Moreover, the PAM receiver 48 needs to be in synchronization with the 8 kHz network clock to properly decode the digital PAM samples.
Transmission from the client modem 34 to the server modem 26 follows the V.34 data transmission standard. That is, the client modem 34 includes a V.34 transmitter 52 and a D/A converter 54 that encode and modulate the digital data to be sent using techniques such as quadrature amplitude modulation (QAM). The hybrid 44 converts the unidirectional signal from the digital-to-analog converter 54 into a bidirectional signal that is transmitted to the central office 32. Once the signal is received at the central office 32, the central office hybrid 42 converts the bidirectional signal into a unidirectional signal that is provided to the central office codec. This unidirectional, analog signal is converted into either xcexc-law or A-law companded PCM codewords by the codec compressor (A/D converter) 56, which are then transmitted through the PSTN 28 until reaching the server modem 26. The server modem 26 includes a conventional V.34 receiver 58 for demodulating and decoding the data sent by the V.34 transmitter 52 in the client modem 34. Thus, data is transferred from the client modem 34 to the server modem 26 at data rates of up to 33.6 kbps as provided for in the V.34 standard.
The V.90 standard only offers increased data rates (e.g., data rates up to 56 kbps) in the downstream direction from a server to a subscriber or client. Upstream communication still takes place at conventional data rates as provided for in the V.34 standard. Nevertheless, this asymmetry is particularly well suited for Internet access. For example, when accessing the Internet, high bandwidth is most useful when downloading large text, video, and audio files to a subscriber""s computer. Using V.90, these data transfers can be made at up to 56 kbps. On the other hand, traffic flow from the subscriber to an ISP consists of mainly keystroke and mouse commands, which are readily handled by the conventional rates provided by the V.34 standard.
The V.90 standard, therefore, provides a framework for transmitting data at rates up to 56 kbps provided the network is capable of supporting the higher rates. The most notable requirement is that there can be at most one digital-to-analog conversion in the path from the server modem to the client modem. Nevertheless, other digital impairments, such as robbed bit signaling (RBS) and digital mapping through PADs, which results in attenuated signals, can also inhibit transmission at V.90 rates. Communication channels exhibiting non-linear frequency response characteristics are yet another impediment to transmission at the V.90 rates. These factors may limit conventional V.90 performance to less than the 56 kbps theoretical data rate.
Articles such as Humblet et al., xe2x80x9cThe Information Driveway,xe2x80x9d IEEE Communications Magazine, December 1996, pp. 64-68, Kalet et al., xe2x80x9cThe Capacity of PCM Voiceband Channels,xe2x80x9d IEEE International Conference on Communications ""93, May 23-26, 1993, Geneva, Switzerland, pp. 507-511, Fischer et al., xe2x80x9cSignal Mapping for PCM Modems,xe2x80x9d V-pcm Rapporteur Meeting, Sunriver, Oreg., USA, Sep. 4-12, 1997, and Proakis, xe2x80x9cDigital Signaling Over a Channel with Intersymbol Interference,xe2x80x9d Digital Communications, McGraw-Hill Book Company, 1983, pp. 373, 381, provide general background information on digital communication systems.
As modem performance specifications push ever closer to the limits supported by the physical media, the potential for user dissatisfaction with modem performance under various line conditions increases. For example, it is not uncommon for 56 k modem users to experience significantly lower connection speeds or throughput than they may expect in light of the 56 k capability associated with the modems. Users may not appreciate that, while manufacturers of such modems often quote 53.3 kbps as a maximum speed, they also typically note that line conditions may result in even lower speeds. Unfortunately, manufacturers currently have generally not effectively explained why a given customer""s modem may be operating at a particular speed or throughput. Furthermore, manufacturers are not readily able to explain why a given customer may encounter an inability to make a connection or experience dropped connections.
One known approach to evaluating modem performance is the use of AT commands, such as those provided for by operating systems, such as Windows(trademark) from Microsoft Corporation, for communicating with a modem (such as the #UD command). However, only a limited amount of diagnostic information may be obtained from a modem using this approach. Furthermore, the modem communication session typically must be terminated to obtain information using AT commands, which not only interrupts ongoing operations but further may limit the amount and types of data available from the modem, (for example, due to retraining procedures overwriting various data within the modem). For example, an interface like Hyperterm(trademark) may be used to enter AT commands which would preclude the use of such commands while the modem was in use by a user application, such as Dial-up Networking, as the Hyperterm(trademark) application would establish any client modem to server modem connection. A further approach, as described in U.S. Pat. No. 5,634,022 entitled xe2x80x9cMulti-Media Computer Diagnostic Systemxe2x80x9d provides for insertion of branch instructions into the operating code of a signal processing device transferring operations to a diagnostic program. However, this approach is directed to discovery and correction of algorithmic or logical faults and may not be well suited to line condition monitoring. Accordingly, a need exists to obtain knowledge of customer specific line conditions and potential interworking problems between a customer""s client modem and a server modem to address customer support problems.
It is an object of the present invention to provide methods, systems and computer program products for monitoring performance of a modem which may be able to obtain data in real time.
It is a further object of the present invention to provide such methods, systems and computer program products which may provide obtained performance data to a provider for use in addressing customer support problems.
These and other objects, advantages, and features of the present invention may be provided by methods, systems and computer program products for monitoring performance of a modem which obtain diagnostic data directly from a memory associated with the modem""s digital signal processor (DSP). A secondary path to the DSP memory is utilized for the monitoring operations so that real time data can be obtained during connection procedures and during an active connection. First-in first-out (FIFO) buffers are preferably incorporated in the DSP memory to track state transitions of one or more of the state machines within the modem and various performance data measurements may be obtained directly from the DSP memory responsive to different state transition events. The real time collected data may be stored in a file and provided to a remote location for use in diagnosing customer problems with specific customer line connections. Accordingly, real time monitoring of digital and analog line conditions and modem performance may be utilized to diagnose problems with modems and line connections.
In one embodiment of the present invention, a method is provided for monitoring performance of a modem including obtaining data related to the performance of the modem from a memory of the modem during an active connection to the modem asynchronously with communication operations of the modem supporting the active connection. Preferably, the data related to the performance of the modem is obtained from a digital signal processor (DSP) memory using a secondary path to the DSP memory. The data may be obtained during startup of the active connection. The data further may be selected from the group consisting of line condition data and interworking data.
In a further embodiment of the present invention, the data related to the performance of the modem includes internal state information and obtaining operations include determining that a state transition has occurred based on the internal state information and capturing a selected type of data related to the performance of the modem responsive to a state transition. Furthermore, the modem may include a plurality of state machines each state machine having a plurality of associated states in which case determining operations may further include determining that a state transition of one of the plurality of state machines has occurred based on detecting a change from one of the plurality of associated states of the one of the plurality of state machines to another of the plurality of associated states of the one of the plurality of state machines and the selected type of data may be selected based on the one of the plurality of state machines. The selected type of data may further be selected based on the one of the plurality of associated states and the another of the plurality of associated states.
In another embodiment of the present invention, a first-in first-out (FIFO) buffer is provided in the DSP memory and determining operations further include placing the internal state information in the FIFO buffer. A plurality of FIFO buffers may be provided in the DSP memory, each of the plurality of FIFO buffers being associated with a different state machine of the modem and internal state information associated with a respective state machine of the modem may be placed in a corresponding one of the plurality of FIFO buffers.
In a further embodiment of the present invention, the date related to the performance of the modem is stored in a text file. The stored data may then be provided to a remote location for analysis.
In another aspect of the present invention, a system is provided for monitoring performance of a modem. The system includes a host system having a host system bus. The monitoring system further includes a modem. The modem includes a digital signal processor (DSP) and a memory coupled to the DSP over a DSP system bus. In addition, the modem also includes a primary path to the DSP memory that supports a communication connection. A bus interface couples the host system bus to the DSP system bus, the bus interface being configured to allow the host system to access the DSP memory to obtain data related to performance of the modem during an active communication session supported by the primary path of the modem asynchronously with communication operations of the modem supporting the active communication session. In one embodiment, the modem further includes a first-in first-out (FIFO) buffer coupled to the DSP and the DSP is configured to place internal state information associated with state machines of the modem in the FIFO buffer. Furthermore, the modem may include a plurality of first-in first-out (FIFO) buffers, each of the FIFO buffers being associated with one of a plurality of state machines of the modem and the DSP may be configured to place internal state information associated with the plurality of state machines in a corresponding one of the FIFO buffers.
As will further be appreciated by those of skill in the art, while described above primarily with reference to method aspects, the present invention may be embodied as methods, apparatus/systems and/or computer program products.